Cayenne User Documentation
Remote Object Persistence Client Deployment

Any J2SE or J2EE application can act as a CWS Client, so its structure and packaging depends on the type of application. Here is a few general hints related to Cayenne:

Client Deployment with Java Web Start

One common approach for distributing J2SE applications (especially desktop applications) is via Java Web Start. Below is a sample JNLP deployment descriptor that can be used as a template for Web Start based distribution:

<?xml version="1.0" encoding="UTF-8"?>
<jnlp codebase="$$codebase">

     <information>
         <title>Cayenne::Sample Client App</title>
         <vendor>MyCompany</vendor>
     </information>

     <security>
         <all-permissions/>
     </security>

     <resources>
       <j2se version="1.4+" max-heap-size="256m"/>
       
       <jar href="myapp.jar"/>
       <jar href="cayenne-client-nodeps.jar"/>
       <jar href="commons-logging-1.0.4.jar"/>
       <jar href="commons-collections-3.1.jar"/>
       <jar href="commons-lang-2.1.jar"/>
       <jar href="hessian-3.0.13.jar"/>
     </resources>

     <application-desc main-class="my.app.Main"/>
</jnlp>
.